An information processing apparatus that serves as a server apparatus that provides various services to a client apparatus includes hardware resources such as a memory and a central processing unit (CPU) that is divided into a plurality of partitions. Each of the partitions operates under an independent operating system (OS) and has one or more system boards. A CPU and a memory are mounted on each of the system boards, and the CPUs execute various processes requested to the information processing apparatus.
A program that is called firmware is installed on each of the system boards that form the partitions. The firmware that is installed on each of the system boards is executed when power is supplied to the system board. The firmware causes software for activating the OS to be read into the memory or causes an operating environment of a system to be set and the software for activating the OS to be executed. When one partition is made up of a plurality of system boards, version numbers of the firmware that is installed on the plurality of system boards belonging to the same partition are the same. The version numbers of the firmware are managed by a controller. The controller manages the firmware of the different version numbers as programs of different types.
In order to restore a partition that includes a system board when the system board fails, a preliminary system board (hereinafter referred to as preliminary board) is included in the information processing apparatus. The preliminary board does not belong to any of the partitions during a normal operation. When a failure occurs in any of the system boards that belong to the partitions, the system board in which the failure occurs is replaced with the preliminary board, and whereby the partition to which the system board in which the failure occurs belongs can be quickly restored.
In order to restore the partition as quickly as possible, it is preferable that firmware of the same version number as firmware installed on a system board in which a failure is likely to occur be installed on the preliminary board. However, when the information processing apparatus has the plurality of partitions and firmware of different version numbers is installed in the partitions, a plurality of preliminary boards are prepared for the number of the version numbers of the firmware.
A technique for managing a version number of a program installed on a system board on the basis of an operating environment of an information processing apparatus is known.
Japanese Laid-open Patent Publication Nos. 7-295796, 7-6114, and 4-17040 are examples of the related art.